Business applications have long been available on desktops, either as an application running natively on the desktop or as an application user interface that communicates with back-end logic (e.g., in a client server model). As the demand increases for more and more applications being available from a non-native terminal (e.g., from mobile devices, or in a computer-to-computer protocol), the cost of porting user interfaces from a native desktop setting to an external system also increases.
Legacy approaches have entailed time consuming tasks of creating or retargeting (e.g., porting) significant portions of business logic in order to provide access to that logic (e.g., via services) and to enable a non-native system to perform “create”, “read”, “update” and “delete” (CRUD) operations against the back-end business logic.
Some approaches for generating and maintaining enterprise applications (e.g., desktop applications) have relied on a “forms-based” approach to interaction with a user. For example, a form is defined to serve as a container for various fields, which fields map to the back-end logic and/or database schema.
What is needed is an approach where each field in the form can be hosted by a mobile terminal app or external system application where the operations corresponding to the form fields can be processed (e.g., as a service) before reaching the back-end business logic. The input/output characteristics and certain other operations corresponding to the form fields can be emulated such that processed back-end business logic can remain agnostic as to the source of the CRUD operation, thus facilitating access to the back-end application from a non-native system.
What is needed is a technique or techniques where services can be called from an external system and yet access the business logic in the back end. None of the aforementioned legacy approaches achieve the capabilities of the herein-disclosed techniques, therefore, there is a need for improvements.